package com.nuoniu.sibanyun.entity.project;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.nuoniu.sibanyun.common.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;

/**
 * <p>
 * 数据库字段表
 * </p>
 *
 * @author 小啊刚
 * @since 2021-06-05
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("sys_rdt_field")
@ApiModel(value="SysRdtField对象", description="数据库字段表")
public class SysRdtField extends BaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "项目ID")
    @TableField("project_id")
    private Integer projectId;

    @ApiModelProperty(value = "字段英文")
    @TableField("field_name_en")
    private String fieldNameEn;

    @ApiModelProperty(value = "字段中文")
    @TableField("field_name_cn")
    private String fieldNameCn;

    @ApiModelProperty(value = "表单ID")
    @TableField("form_id")
    private Integer formId;

    @ApiModelProperty(value = "被关联的表id")
    @TableField("related_table_id")
    private Integer relatedTableId;

    @ApiModelProperty(value = "被关联的表")
    @TableField("related_table")
    private String relatedTable;

    @ApiModelProperty(value = "系统标准字段")
    @TableField("sys_standard_field")
    private String sysStandardField;

    @ApiModelProperty(value = "唯一属性")
    @TableField("only_attribute")
    private String onlyAttribute;

    @ApiModelProperty(value = "用户端显示")
    @TableField("client_display")
    private String clientDisplay;

    @ApiModelProperty(value = "引用对象")
    @TableField("reference_object")
    private String referenceObject;

    @ApiModelProperty(value = "引用字段名")
    @TableField("reference_filed")
    private String referenceFiled;

    @ApiModelProperty(value = "引用字段类型")
    @TableField("reference_filed_type")
    private String referenceFiledType;

    @ApiModelProperty(value = "创建人")
    @TableField("created_by")
    private String createdBy;

    @ApiModelProperty(value = "创建日期")
    @TableField("created_date")
    private LocalDateTime createdDate;

    @ApiModelProperty(value = "审核人")
    @TableField("chcked_by")
    private String chckedBy;

    @ApiModelProperty(value = "审核日期")
    @TableField("checked_date")
    private LocalDateTime checkedDate;

    @ApiModelProperty(value = "字段注释")
    @TableField("remarks")
    private String remarks;

    @ApiModelProperty(value = "字段类型")
    @TableField("type")
    private String type;

    @ApiModelProperty(value = "java属性")
    @TableField("java_property")
    private String javaProperty;

    @ApiModelProperty(value = "控件类型")
    @TableField("control_type")
    private String controlType;

    @ApiModelProperty(value = "字段验证")
    @TableField("verification")
    private String verification;

    @ApiModelProperty(value = "是否必填")
    @TableField("is_not_null")
    private Boolean isNotNull;

    @ApiModelProperty(value = "默认值")
    @TableField("default_value")
    private String defaultValue;

    @ApiModelProperty(value = "是否编辑0:否1:是")
    @TableField("is_edit")
    private Boolean isEdit;

    @ApiModelProperty(value = "排序")
    @TableField("sort")
    private Integer sort;
}
